package com.j1903.service.impl;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.baomidou.mybatisplus.core.conditions.segments.HavingSegmentList;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.j1903.bean.Goods;
import com.j1903.bean.Goodscategory;
import com.j1903.mapper.GoodsMapper;
import com.j1903.mapper.GoodscategoryMapper;
import com.j1903.service.GoodscategoryService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.j1903.vo.TopCateCroup;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
/**
 * <p>
 * 分类表 服务实现类
 * </p>
 *
 * @author fjj
 * @since 2021-12-13
 */
@Service
public class GoodscategoryServiceImpl extends ServiceImpl<GoodscategoryMapper, Goodscategory> implements GoodscategoryService {
        @Resource
        private GoodscategoryMapper  goodscategoryDao;
        @Resource
        private GoodsMapper goodsMapper;
        @Override
        public List<Goodscategory> lists(Goodscategory obj){
            return  goodscategoryDao.lists(obj);
        }
    @Override
    public Map<String,List<TopCateCroup>> getWithSub(Goodscategory obj) {
//        List<Goodscategory> tops=this.lists(obj);
//        Map<String,List<TopCateCroup>> map=new HashMap<>();
//        Map<String,List<TopCateCroup>> newMap=new HashMap<>();
//        if(tops!=null && tops.size()>0)
//        {
//            for(int i=0;i<tops.size();i++)
//            {
//                List<TopCateCroup> tcgList=new ArrayList<>();
//                String key=tops.get(i).getCateName();
//                List<Goodscategory> second=
//                this.lists(new Goodscategory(tops.get(i).getId()));
//                System.out.println(second);
//                if(second.size()>0)
//                {
//                    //把查询出来的二级分类转换为
//                    for(Goodscategory gc:second)
//                    {
//                        tcgList.add(new TopCateCroup(gc.getId(),gc.getCateName(),gc.getLogo(),1));
//                    }
//                }
//                List<Goods> listss=goodsMapper.lists(new Goods(tops.get(i).getId()));
//                System.out.println(listss);
//                if(listss.size()>0)
//                {
//                    for(Goods g:listss)
//                    {
//                        tcgList.add(new TopCateCroup(g.getId(),g.getGoodsName(),g.getImgpath(),1));
//                    }
//                    map.put(tops.get(i).getCateName(), tcgList);
//                }
//                System.out.println(map);
//                map.put(key, tops);
//                List sst=new ArrayList();
//                sst.add(map);
//                return sst;

//            }
//
//            newMap.put("手机", map.get("手机"));
//            newMap.put("电视", map.get("电视"));
//            newMap.put("家电", map.get("家电"));
//            //判断合并分类
//            for(Map.Entry<String,List<TopCateCroup>> entry:
//            map.entrySet())
//            {
//                if(entry.getKey().equals("笔记本")||entry.getKey().equals("平板"))
//                {
//                    if( newMap.get("笔记本 平板")==null)
//                    {
//                        newMap.put("笔记本 平板", entry.getValue());
//                    }else
//                    {
//                        for(TopCateCroup tcg2:entry.getValue())
//                        {
//                            newMap.get("笔记本 平板").add(tcg2);
//                        }
//                    }
//                }else
//                if(entry.getKey().equals("出行")||entry.getKey().equals("穿戴"))
//                {
//                    if( newMap.get("出行 穿戴")==null)
//                    {
//                        newMap.put("出行 穿戴", entry.getValue());
//                    }else
//                    {
//                        for(TopCateCroup tcg2:entry.getValue())
//                        {
//                            newMap.get("出行 穿戴").add(tcg2);
//                        }
//                    }
//                }else
//                if(entry.getKey().equals("智能")||entry.getKey().equals("路由器"))
//                {
//                    if( newMap.get("智能 路由器")==null)
//                    {
//                        newMap.put("智能 路由器", entry.getValue());
//                    }else
//                    {
//                        for(TopCateCroup tcg2:entry.getValue())
//                        {
//                            newMap.get("智能 路由器").add(tcg2);
//                        }
//                    }
//                }else
//                if(entry.getKey().equals("电源")||entry.getKey().equals("配件"))
//                {
//                    if( newMap.get("电源 配件")==null)
//                    {
//                        newMap.put("电源 配件", entry.getValue());
//                    }else
//                    {
//                        for(TopCateCroup tcg2:entry.getValue())
//                        {
//                            newMap.get("电源 配件").add(tcg2);
//                        }
//                    }
//                }else
//                if(entry.getKey().equals("健康")||entry.getKey().equals("儿童"))
//                {
//                    if( newMap.get("健康 儿童")==null)
//                    {
//                        newMap.put("健康 儿童", entry.getValue());
//                    }else
//                    {
//                        for(TopCateCroup tcg2:entry.getValue())
//                        {
//                            newMap.get("健康 儿童").add(tcg2);
//                        }
//                    }
//                }else
//                if(entry.getKey().equals("耳机")||entry.getKey().equals("音箱"))
//                {
//                    if( newMap.get("笔记本 平板")==null)
//                    {
//                        newMap.put("笔记本 平板", entry.getValue());
//                    }else
//                    {
//                        for(TopCateCroup tcg2:entry.getValue())
//                        {
//                            newMap.get("笔记本 平板").add(tcg2);
//                        }
//                    }
//                }else
//                if(entry.getKey().equals("生活")||entry.getKey().equals("箱包"))
//                {
//                    if( newMap.get("生活 箱包")==null)
//                    {
//                        newMap.put("生活 箱包", entry.getValue());
//                    }else
//                    {
//                        for(TopCateCroup tcg2:entry.getValue())
//                        {
//                            newMap.get("生活 箱包").add(tcg2);
//                        }
//                    }
//                }
//
//
//                }
//            }
//
//        return newMap;
        return null;
        }

    @Override
    public Map<String, List<TopCateCroup>> getWithSub2(Goodscategory obj) {
        List<Goodscategory> tops1=this.lists(obj);
        List<TopCateCroup> tcgList=new ArrayList<>();
        Map<String,List<TopCateCroup>> map1=new HashMap<>();
        if(tops1!=null && tops1.size()>0)
        {
            for(Goodscategory gc:tops1)
            {
                tcgList.add(new TopCateCroup(gc.getId(),gc.getCateName(),gc.getLogo(),1));
            }
            List<Goods> list2=goodsMapper.lists(new Goods(tops1.get(1).getLeftMenu()));
            if(list2.size()>0)
            {
                for(Goods g:list2)
                {
                    tcgList.add(new TopCateCroup(g.getId(),g.getGoodsName(),g.getImgpath(),1));
                }
            }
            map1.put("lb1", tcgList);

        }
        return map1;
    }

    @Override
        public IPage<Goodscategory> pages(IPage<Goodscategory> page, Goodscategory obj){
            return  goodscategoryDao.pages(page,obj);
        }
}
